package com.lening.handler;

import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;

import java.util.Date;

/**
 * 创作时间：2021/4/19 11:39
 * 作者：李增强
 */
@Component
public class MyMetaObjectHandler implements MetaObjectHandler{

    //这个是新增的时候，需要进行的操作
    @Override
    public void insertFill(MetaObject metaObject) {
        this.setFieldValByName("createTime",new Date(),metaObject);
        //新增的时候，让修改时间和新增的一样，这个就可以判断这个记录有没有被人修改过
        this.setFieldValByName("updateTime",new Date(),metaObject);
        //把版本号也加到这里来
        this.setFieldValByName("version",1,metaObject);
        this.setFieldValByName("deleted",0,metaObject);

    }

    /**
     * 修改这个操作的时候需要干的事情，给我们添加注解的字段赋值一下
     */
    @Override
    public void updateFill(MetaObject metaObject) {
        this.setFieldValByName("updateTime",new Date(),metaObject);
    }
}
